#ifndef TCONTEXT_H
#define TCONTEXT_H

#include "IContext.h"

class TContext : public IContext
{
public:
    static IContext* instance();

public:
    TRequesterFactory* requesterFactory();
    TLogger* logger();
    TConfig* config();
    TDesktop* desktop();

    void setDesktop(TDesktop* desktop);

private:
    TContext();
    ~TContext();
    static TContext* _instance;

    TRequesterFactory* _requsterFactory;
    TLogger *_logger;
    TConfig *_config;
    TDesktop* _desktop;
};

#endif // TCONTEXT_H
